package xin.marcher.module.attribute.api;

import xin.marcher.module.attribute.domain.dto.ItemSkuAttributeValueResultDTO;
import xin.marcher.module.attribute.domain.dto.SkuAttributeValueDTO;
import xin.marcher.module.attribute.domain.request.ItemSkuAttributeValueRequest;
import xin.marcher.module.attribute.domain.request.QueryItemSkuAttributeValueRequest;
import xin.marcher.module.attribute.domain.request.QuerySkuIdsByAttributeRequest;
import xin.marcher.module.common.core.JsonResult;

import java.util.List;

/**
 * 商品属性相关操作API
 */
public interface ItemSkuAttributeApi {

    /**
     * 保存标品和商品属性接口
     */
    JsonResult<ItemSkuAttributeValueResultDTO> saveItemSkuAttributeValue(List<ItemSkuAttributeValueRequest> list);

    /**
     * 根据商品id品类id查询聚合商品属性值接口
     */
    JsonResult<List<SkuAttributeValueDTO>> queryItemSkuAttributeValueList(QueryItemSkuAttributeValueRequest request);

    /**
     * 根据属性查询条件搜索商品接口
     */
    JsonResult<List<String>> querySkuIdsByAttribute(QuerySkuIdsByAttributeRequest request);
}
